home *** CD-ROM | disk | FTP | other *** search
Oberon Document | 1996-01-05 | 2.3 KB | 65 lines | [oODC/obnF] |
- Documents.StdDocumentDesc
- Documents.DocumentDesc
- Containers.ViewDesc
- Views.ViewDesc
- Stores.StoreDesc
- Documents.ModelDesc
- Containers.ModelDesc
- Models.ModelDesc
- Stores.ElemDesc
- TextViews.StdViewDesc
- TextViews.ViewDesc
- TextModels.StdModelDesc
- TextModels.ModelDesc
- TextModels.AttributesDesc
- Helvetica
- Helvetica
- Helvetica
- MODULE ObxConv;
- IMPORT Files, Stores, TextModels, TextViews;
- PROCEDURE ImportTEXT* (f: Files.File; VAR s: Stores.Store);
- VAR r: Stores.Reader; t: TextModels.Model; w: TextModels.Writer;
- ch: CHAR; len: LONGINT;
- BEGIN
- ASSERT(f # NIL, 20); ASSERT(s = NIL, 21);
- (* ASSERT(f.type = "TEXT", 22); (* the type is platform specific*) *)
- r.ConnectTo(f); r.SetPos(0);
- len := f.Length();
- t := TextModels.dir.New(); w := t.NewWriter(NIL);
- WHILE len # 0 DO
- r.ReadChar(ch);
- (* should translate character set here *)
- w.WriteChar(ch); DEC(len)
- END;
- s := TextViews.dir.New(t)
- END ImportTEXT;
- PROCEDURE ExportTEXT* (s: Stores.Store; f: Files.File);
- VAR w: Stores.Writer; t: TextModels.Model; r: TextModels.Reader;
- len: LONGINT; ch: CHAR;
- BEGIN
- ASSERT(s # NIL, 20); ASSERT(f # NIL, 21); ASSERT(f.Length() = 0, 22);
- ASSERT(s IS TextViews.View, 23);
- w.ConnectTo(f); w.SetPos(0);
- t := s(TextViews.View).ThisModel();
- len := t.Length();
- r := t.NewReader(NIL);
- WHILE len # 0 DO
- r.ReadChar(ch);
- (* should convert character set here *)
- w.WriteChar(ch);
- DEC(len)
- END
- END ExportTEXT;
- END ObxConv.
- TextControllers.StdCtrlDesc
- TextControllers.ControllerDesc
- Containers.ControllerDesc
- Controllers.ControllerDesc
- TextRulers.StdRulerDesc
- TextRulers.RulerDesc
- TextRulers.StdStyleDesc
- TextRulers.StyleDesc
- TextRulers.AttributesDesc
- Helvetica
- Documents.ControllerDesc
-